package org.jshand.cloud.controller;

import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * 作者: 张金山
 * 创建时间：2025/2/11 19:33   星期二
 * 描述： 服务提供者控制器
 * 项目: spring-cloud-alibaba - org.jshand.cloud.controller
 * 作者的博客:  https://blog.fulfill.com.cn
 */

@Slf4j
@RestController
@RequestMapping("/provider")
public class ProviderOrderController {


    /**
     * 获取当前应用名称
     */
    @Value("${spring.application.name}")
    private String appName;

    @Value("${server.port}")
    private String serverPort;


    /**
     * 普通方法
     * @return
     */
    @RequestMapping("/index")
    String index(){
        String time = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
        return appName+"@"+time;
    }

    /**
     * 供用户微服模块调用获取用户订单的功能
     * @param userId
     * @return
     */
    @RequestMapping("/order/{userId}")
    String order(@PathVariable("userId") String userId){
        String info = String.format("用户【%s】的订单信息",userId);
        return info;
    }


    /**
     * 集群
     * @param userId
     * @return
     */
    @RequestMapping("/colony/{userId}")
    String colony(@PathVariable("userId") String userId){

        log.info("服务提供者，演示集群功能，当前端口：{}",serverPort);

        String info = String.format("用户【%s】的订单信息,来自机器：%s",userId,serverPort);
        return info;
    }



}
